The present invention is related to data communications and in particular to data communications between multiple dial-up connections and a network.
Previously, Internet service providers (ISPs) supported multiple simultaneous connections between the Internet and users dialing into the ISP by deploying many modems connected to multiple telephone lines. Each dial-in user connects to a particular modem which is in turn connected to an Internet router which routes data between the user and the Internet. Each modem has to be individually configured and monitored for failure.
The introduction of intelligent modem racks containing multiple modems and connected to a single telephone line, such as a T1 line or an ISDN line, that supports multiple simultaneous calls has allowed the ISPs more control over their infrastructure. However, in order to support the high speeds required by Internet users, the data bus on the rack is expensive, complex, and prone to failure. Furthermore, the racks are dedicated to a single type of telephone connection, either T1 or ISDN, not both, and are not easily scalable. Finally, although the racks give more control over modem management, ISP personnel cannot easily perform the management functions remotely.
Thus, there is a need for a scalable and reliable modem system that provides flexibility in the type of line connections configurable, and is easily managed from a remote site.
A communications server system manages communication sessions between multiple remote users and a network by distributing the processing necessary to establish and maintain the session among multiple processors connected to multiple busses. The communications sessions are divided into connection segments which are coupled to a network interface through a first bus. The network interface receives outgoing network packets from a connection segment on the first bus and transmits the outgoing network packets to the network. The network interface also for receives incoming network packets from the network and transmits the incoming network packets to a connection segment on the first bus.
Each connection segment is coupled to a second bus and comprises a communications module for coupling to a telephone line and a remote access server microprocessor that control the communications sessions through the specific segment. The communications module converts incoming telephone signals from the remote users into frames of incoming telephone data and transmits the frames of incoming telephone data on the second bus. The communications module also converts frames of outgoing telephone data received on the second bus into outgoing telephone signals for the remote users. The remote access server microprocessor converts the frames of incoming telephone data received on the second bus into outgoing network packets and transmits the outgoing network packets on the first bus. The remote access server microprocessor also converts the incoming network packets received on the first bus into frames of outgoing telephone data and transmits the frames of outgoing telephone data on the second bus.
When the communications segment is connected to a T1 telephone line, the communications module comprises a T1 connection line interface which demultiplexes/multiplexes between telephone signals from/to the remote users and service channels contained in the T1 signal. A plurality of modem modules are coupled to the T1 connection line interface on a segment bus. Each modem module comprises a plurality of modems and a controller.
When the communications segment is connected to primary rate ISDN (PRI) line, the communications module comprises a PRI communications line interface. If the PRI signals are modulated, the communications module further comprises a plurality of modem modules as in the T1 case.
When the communications segment is connected to a basic rate ISDN line (BRI), the communications module comprises a plurality of BRI communications line interfaces and a plurality of modems.
The remote communications server system further comprises a system manager controller coupled to the plurality of connection segments through a third bus which transmits commands to each connection segment and receives status information from each connection segment.
A method of distributing the processing inherent in communications sessions between multiple remote users and a network by dividing the communication sessions into segments and dedicating a communications line interface and a processor to each segment is also described. The communications line interface and the processor in each segment are coupled to a data bus. A single network interface is assigned to all the segments and is coupled to the processors in the segments through a different data bus. If signals in a telephone line coupled to a communications line interface in a segment require modulation/demodulation, a plurality of modems is assigned to the segment. The plurality of modems is further divided into modem pools with each modem pool assigned a modem pool controller to manage the data traversing the modems in the pool. The modems in a pool and the modem pool controller are coupled through a third bus.
Software that converts among the various data protocols supported by the remote communications server system is described as is server management software.
Thus, the remote communications server system supports a plurality of communications sessions between multiple dial-in users and a network using a combination of buses, processors, and a segmented design that creates a distributed processing system having high throughput without the stability problems associated with gigabit bus speeds. Furthermore, the system provides flexible configuration because it supports a mixture of different types of telephone links and allows the substitution of one service type for another without affecting the remaining telephone links. The modular design also permits scalability by increasing the number of segments in use and/or the number of lines connected into each segment. Finally, because the system manager can be accessed through industry-standard remote protocols, the remote communications server system deployed at one site can be easily maintained from a different site.